﻿#region Copyright (C) Sector7 Software Studio. All rights reserved
/*******************************************************************************************
 * Creation
 *      Author:         Wolf Lai
 *      Date:           2013/6/15 星期六 11:45:00
 *      Version:        
 * Modification 
 *      Author: 
 *      Date: 
 *      Description: 
 *      Version:
 *******************************************************************************************/
#endregion
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.Serialization;
using Sector7.Framework.Core;
using Sector7.Framework.EntityType;

namespace Sector7.Medical.EntityType
{
    /// <summary>
    /// 员工信息实体类
    /// </summary>
    [Serializable()]
    [DataContract]
    public class M7_Employee : S7_Citizen
    {
        #region Accessor
        /// <summary>
        /// 获取或设置员工编码
        /// </summary>
        [DataMember]
        [DBFieldAttribute]
        public long EmpId { get; set; }

        /// <summary>
        /// 获取或设置个人唯一编码
        /// </summary>
        [DataMember]
        [DBFieldAttribute]
        public string CitizenId { get; set; }

        /// <summary>
        /// 获取或设置所属二级科室编码
        /// </summary>
        [DataMember]
        [DBFieldAttribute]
        public int DeptId { get; set; }

        /// <summary>
        /// 获取或设置所属病区编码
        /// </summary>
        [DataMember]
        [DBFieldAttribute]
        public int AreaId { get; set; }

        /// <summary>
        /// 获取或设置员工组编码
        /// </summary>
        [DataMember]
        [DBFieldAttribute]
        public int EmpGroupId { get; set; }

        /// <summary>
        /// 获取或设置职务编码
        /// </summary>
        [DataMember]
        [DBFieldAttribute]
        public string DutyId { get; set; }

        /// <summary>
        /// 获取或设置职位等级编码
        /// </summary>
        [DataMember]
        [DBFieldAttribute]
        public string CompetenceId { get; set; }
        
        /// <summary>
        /// 获取或设置备注
        /// </summary>
        [DataMember]
        [DBFieldAttribute]
        public string Remarks { get; set; }

        /// <summary>
        /// 获取或设置是否在职
        /// </summary>
        [DataMember]
        [DBFieldAttribute]
        public bool IsOnDuty { get; set; }

        /// <summary>
        /// 获取或设置是否专家
        /// </summary>
        [DataMember]
        [DBFieldAttribute]
        public bool IsSpecialist { get; set; }

        /// <summary>
        /// 获取或设置是否麻醉师
        /// </summary>
        [DataMember]
        [DBFieldAttribute]
        public bool IsAnesthesia { get; set; }

        /// <summary>
        /// 获取或设置是否医生
        /// </summary>
        [DataMember]
        [DBFieldAttribute]
        public bool IsDoctor { get; set; }

        /// <summary>
        /// 获取或设置是否护士
        /// </summary>
        [DataMember]
        [DBFieldAttribute]
        public bool IsNurse { get; set; }

        /// <summary>
        /// 获取或设置所属仓库编码
        /// </summary>
        [DataMember]
        [DBFieldAttribute]
        public int StorageId { get; set; }

        /// <summary>
        /// 获取或设置所属药房编码
        /// </summary>
        [DataMember]
        [DBFieldAttribute]
        public int PharmacyId { get; set; }

        /// <summary>
        /// 获取或设置收费部门编码
        /// </summary>
        [DataMember]
        [DBFieldAttribute]
        public int ChargeDeptId { get; set; }

        /// <summary>
        /// 获取或设置密码
        /// </summary>
        [DataMember]
        [DBFieldAttribute]
        public string Password { get; set; }

        /// <summary>
        /// 获取或设置入职日期
        /// </summary>
        [DataMember]
        [DBFieldAttribute]
        public DateTime HireDate { get; set; }

        /// <summary>
        /// 获取或设置离职日期
        /// </summary>
        [DataMember]
        [DBFieldAttribute]
        public DateTime LeaveDate { get; set; }

        /// <summary>
        /// 获取或设置所属二级科室
        /// </summary>
        [DataMember]
        public M7_Department Department { get; set; }

        /// <summary>
        /// 获取或设置所属病区
        /// </summary>
        [DataMember]
        public M7_SickArea SickArea { get; set; }

        /// <summary>
        /// 获取或设置员工组
        /// </summary>
        [DataMember]
        public M7_EmployeeGroup EmpGroup { get; set; }

        /// <summary>
        /// 获取或设置职务
        /// </summary>
        [DataMember]
        public M7_Duty Duty { get; set; }

        /// <summary>
        /// 获取或设置职位等级
        /// </summary>
        [DataMember]
        public M7_Competence Competence { get; set; }

        /// <summary>
        /// 获取或设置性别
        /// </summary>
        [DataMember]
        public M7_Gender Gender { get; set; }

        /// <summary>
        /// 获取或设置身份证件类别
        /// </summary>
        [DataMember]
        public M7_IdentityType IdentityType { get; set; }
        #endregion
    }
}
